This is nearly always a html entity problem: do any of your spell1 or spell2 macros contain queries? An important thing to realise: when you have a macro call in a macro, you migh texpect that roll20 goes line by line, does and the macro when it reaches it. But thats not what happens. Roll20 examines the entire macro, and grabs the contents of any macros mentioned, and puts them in the calling macro. So imaging spell1 and spell2 each contained, the following macro: I cast a spell, it does ?{Number of Dice|1}d6 damage Roll20 will start the top macro, grab the contents of sopell1 and spell2, resulting in this ?{Spells| Spell1,I cast a spell, it does ?{Number of Dice|1}d6 damage| Spell2,I cast a spell, it does ?{Number of Dice|1}d6 damage} and will then try to run that. The problem is, this macro ?{Number of Dice|1} contains special characters, | } that cause the macro to end prematurely. Roll20 has no way of knowing those are different queries. Nesting queries is very hard in roll20, see here: <a href="https://wiki.roll20.net/Macros#Advanced_Usage_for_Roll_Queries" rel="nofollow">https://wiki.roll20.net/Macros#Advanced_Usage_for_Roll_Queries</a> The best way to avoid this, is to replace your initial query with a chat menu: <a href="https://app.roll20.net/forum/permalink/5927072/" rel="nofollow">https://app.roll20.net/forum/permalink/5927072/</a> That way you dont have to edit the spell1 and spell2 macros.